1 检查可以使用的shell和预设使用的shell
1 | $ cat /etc/shells |
2 查看前一次登录使用的指令
1 | $ cat ~/.bash_history |
3 制定别名
1 | $ alias # 查看已经设置的命令别名 |
4 查看可执行命令的类型
1 | $ type ls |
5 变量与环境变量
1 | env # 查看所有环境变量 |
注意
- 双引号(“”)内的特殊字符人保持原有特性,单引号(’’)内的特殊字符只作为普通文本对待
- 跳脱字符(\)可以将特殊字符(Enter &Space&\&’ 等)变成一般字符
$(指令)
或反单引号(指令
)可获得其他指令的信息- 扩增变量内容示例:
PATH="$PATH":/home/bin
或PATH="${PATH}":/home/bin
- 将普通变量变为环境变量:
export PATH
, 这样以来在子shell中可以共享这个变量 - 取消变量的设置:
unset PATH
6 进入当前系统核心模块目录
1 | $ cd /lib/modules/`uname -r`/kernel或cd /lib/$ modules/$(uname -r)/kernel |
7 查找相关文档并列出属性
1 | $ ls -al `locate keyword` |
8 将常去的工作目录设置为环境变量
1 | $ workspace="/home/anderson/Workspace" |
注意:修改bash的配置文件更加方便
9 产生0-9之间的随机数
1 | $ declare -i num=$RANDOM*10/32768;echo num |
10 特殊变量
PS1
命令提示字符 (非操作系统的环境变量)
1 | anderson@anderson-Sailing-Series:/usr/java$ cd ~ |
$
当前sheel的PID
1 | $ echo $$ |
?
上一操作的返回值
1 | $echo $? |
11 影响显示结果的语系变量
1 | $ locale -a |
12 read
1 | $ read -p "Enter your name in 30s:" -t 30 named |
13 指定数据类型命令 declare
1 | $ declare -i num=10+5 # 指定num为整数类型 |
14 ulimit
1 | $ ulimit -a # 列出当前身份受到的限制 |
15 变量的设定方式
16 history
1 | $ history # 列出本次登录后的所有指令记录 |
17 bash的进站欢迎信息设置
1 | $ cat /etc/issue |
18 login shell 和nologin shell
1 | $ source ~/.bashrc <==>$ . ~/.bashrc |
配置文件
~/.bashrc
/etc/man.config
~/.bash_history
!/.bash_logout
终端机的环境设定
bash默认的组合键
bash下特殊符号汇总:
通配符
19 数据流重导向
stdout和stderr
1 | $ find -name /home .bashrc > list_right 2> list_error # 标准信息写到list_right ,标准错误信息写到list_err |
stdin
1 | $ cat > catfile # 利用cat创建一个新档案,^d结束输入 |
20 命令执行的判断依据[ ; && ||]
1 | # 不考虑指令的相关性连续执行 |
1 | $ ls /tmp/abc && touch /tmp/abc/hehe # 如果存在/tmp/abc就创建/tmp/abc/hehe,否则不创建 |
21 管线命令
- less
- more
- head
- tail
- cut
- grep
- sort
- uniq
- wc
- tee
1 | $ ls -al /etc | less |
22 字符转换命令
- tr
- col
- john
- paste
- expand
1 | # 将last输出信息中所有小写改为大写 |